package com.gc.gc.organ.repository;

import com.gc.gc.mybatis.entity.PtMenuEntity;
import com.gc.gc.mybatis.entity.PtOrganEntity;
import com.gc.gc.mybatis.entity.PtUserEntity;
import com.gc.gc.mybatis.flexigrid.PagingBean;
import com.gc.gc.mybatis.ztree.ZtreeEntity;
import com.gc.gc.organ.entity.OrganSearchEntity;
import com.gc.gc.user.entity.UserSearchEnity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.time.LocalDateTime;
import java.util.List;

@Mapper
public interface OrganDao {
    List<PtOrganEntity> queryOrganListByPadding(@Param("search")OrganSearchEntity search,@Param("paging") PagingBean paging);
    Integer queryUserListTotal(@Param("search") OrganSearchEntity search);
    List<ZtreeEntity> getOrganZtreeList();
    void delOrganByUuid(@Param("organUuid") String organUuid);
    void bindingByUuid(@Param("organUuid")String organUuid,@Param("parentUuid") String parentUuid);
    void unboundByUuid(@Param("organUuid")String organUuid);
    void insertOrgan(@Param("organUuid")String organUuid,@Param("organName")String organName,@Param("parentUuid")String parentUuid,@Param("DESCRIPTION")String DESCRIPTION,@Param("time") LocalDateTime time);
    void updateOrgan(@Param("organUuid")String organUuid,@Param("organUuidUpdate")String organUuidUpdate,@Param("organName")String organName,@Param("parentUuid")String parentUuid,@Param("DESCRIPTION")String DESCRIPTION);
    PtOrganEntity selectSearchOrganEntityByOrganUuid(@Param("organUuid") String organUuid);

}
